package com.foreverwin.jzymes.production.sfc.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import java.util.Date;
import java.util.Date;
import java.util.Date;
import java.util.Date;
import java.util.Date;
import java.util.Date;

/**
 * 工令表 Z_SFC
 * 
 * @author ervin
 * @date 2019-05-07
 */
public class SFC
{
	private static final long serialVersionUID = 1L;
	
	/** 主键 */
	private String handle;
	/** 站点 */
	private String site;
	/** 机种 */
	private String machineType;
	/** 制程(GRIND,CNC) */
	private String procedureBo;
	/** 物料 */
	private String itemBo;
	/** 工艺路线 */
	private String routerBo;
	/** 工令号 */
	private String sfc;
	/** 状态 */
	private String statusBo;
	/** 计划生产数量 */
	private Long planQty;
	/** 工令数量 */
	private Long sfcQty;
	/** 实际下达数量(第一个工序完成数量) */
	private Long releasedQty;
	/** 良品入库数量(IQC检验入库数量) */
	private Long okQty;
	/** 不良入库数量(IQC检验入库数量) */
	private Long ngQty;
	/** 制程报废数量(IQC检验入库数量) */
	private Long scrapQty;
	/** 原材不良退库数量(IQC检验入库数量) */
	private Long rawNcQty;
	/** 原材良品退库数量(IQC检验入库数量) */
	private Long rawOkQty;
	/** 计划开始时间 */
	@JsonFormat( pattern = "yyyy-MM-dd")
	private Date planStartTime;
	/** 计划完成时间 */
	private Date planEndTime;
	/** 实际开始时间 */
	private Date actStartTime;
	/** 实际完成时间 */
	private Date actEndTime;
	/** 创建日期 */
	private Date createdDateTime;
	/** 更新日期 */
	private Date updatedDateTime;
	/** 创建人员 */
	private String createUserBo;
	/** 更新人员 */
	private String updateUserBo;

	public void setHandle(String handle) 
	{
		this.handle = handle;
	}

	public String getHandle() 
	{
		return handle;
	}
	public void setSite(String site) 
	{
		this.site = site;
	}

	public String getSite() 
	{
		return site;
	}
	public void setMachineType(String machineType) 
	{
		this.machineType = machineType;
	}

	public String getMachineType() 
	{
		return machineType;
	}
	public void setProcedureBo(String procedureBo) 
	{
		this.procedureBo = procedureBo;
	}

	public String getProcedureBo() 
	{
		return procedureBo;
	}
	public void setItemBo(String itemBo) 
	{
		this.itemBo = itemBo;
	}

	public String getItemBo() 
	{
		return itemBo;
	}
	public void setRouterBo(String routerBo) 
	{
		this.routerBo = routerBo;
	}

	public String getRouterBo() 
	{
		return routerBo;
	}
	public void setSfc(String sfc) 
	{
		this.sfc = sfc;
	}

	public String getSfc() 
	{
		return sfc;
	}
	public void setStatusBo(String statusBo) 
	{
		this.statusBo = statusBo;
	}

	public String getStatusBo() 
	{
		return statusBo;
	}
	public void setPlanQty(Long planQty) 
	{
		this.planQty = planQty;
	}

	public Long getPlanQty() 
	{
		return planQty;
	}
	public void setSfcQty(Long sfcQty) 
	{
		this.sfcQty = sfcQty;
	}

	public Long getSfcQty() 
	{
		return sfcQty;
	}
	public void setReleasedQty(Long releasedQty) 
	{
		this.releasedQty = releasedQty;
	}

	public Long getReleasedQty() 
	{
		return releasedQty;
	}
	public void setOkQty(Long okQty) 
	{
		this.okQty = okQty;
	}

	public Long getOkQty() 
	{
		return okQty;
	}
	public void setNgQty(Long ngQty) 
	{
		this.ngQty = ngQty;
	}

	public Long getNgQty() 
	{
		return ngQty;
	}
	public void setScrapQty(Long scrapQty) 
	{
		this.scrapQty = scrapQty;
	}

	public Long getScrapQty() 
	{
		return scrapQty;
	}
	public void setRawNcQty(Long rawNcQty) 
	{
		this.rawNcQty = rawNcQty;
	}

	public Long getRawNcQty() 
	{
		return rawNcQty;
	}
	public void setRawOkQty(Long rawOkQty) 
	{
		this.rawOkQty = rawOkQty;
	}

	public Long getRawOkQty() 
	{
		return rawOkQty;
	}
	public void setPlanStartTime(Date planStartTime) 
	{
		this.planStartTime = planStartTime;
	}

	public Date getPlanStartTime() 
	{
		return planStartTime;
	}
	public void setPlanEndTime(Date planEndTime) 
	{
		this.planEndTime = planEndTime;
	}

	public Date getPlanEndTime() 
	{
		return planEndTime;
	}
	public void setActStartTime(Date actStartTime) 
	{
		this.actStartTime = actStartTime;
	}

	public Date getActStartTime() 
	{
		return actStartTime;
	}
	public void setActEndTime(Date actEndTime) 
	{
		this.actEndTime = actEndTime;
	}

	public Date getActEndTime() 
	{
		return actEndTime;
	}
	public void setCreatedDateTime(Date createdDateTime) 
	{
		this.createdDateTime = createdDateTime;
	}

	public Date getCreatedDateTime() 
	{
		return createdDateTime;
	}
	public void setUpdatedDateTime(Date updatedDateTime) 
	{
		this.updatedDateTime = updatedDateTime;
	}

	public Date getUpdatedDateTime() 
	{
		return updatedDateTime;
	}
	public void setCreateUserBo(String createUserBo) 
	{
		this.createUserBo = createUserBo;
	}

	public String getCreateUserBo() 
	{
		return createUserBo;
	}
	public void setUpdateUserBo(String updateUserBo) 
	{
		this.updateUserBo = updateUserBo;
	}

	public String getUpdateUserBo() 
	{
		return updateUserBo;
	}

    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("handle", getHandle())
            .append("site", getSite())
            .append("machineType", getMachineType())
            .append("procedureBo", getProcedureBo())
            .append("itemBo", getItemBo())
            .append("routerBo", getRouterBo())
            .append("sfc", getSfc())
            .append("statusBo", getStatusBo())
            .append("planQty", getPlanQty())
            .append("sfcQty", getSfcQty())
            .append("releasedQty", getReleasedQty())
            .append("okQty", getOkQty())
            .append("ngQty", getNgQty())
            .append("scrapQty", getScrapQty())
            .append("rawNcQty", getRawNcQty())
            .append("rawOkQty", getRawOkQty())
            .append("planStartTime", getPlanStartTime())
            .append("planEndTime", getPlanEndTime())
            .append("actStartTime", getActStartTime())
            .append("actEndTime", getActEndTime())
            .append("createdDateTime", getCreatedDateTime())
            .append("updatedDateTime", getUpdatedDateTime())
            .append("createUserBo", getCreateUserBo())
            .append("updateUserBo", getUpdateUserBo())
            .toString();
    }
}
